Computing clusters and other distributed computing systems may include a number of computing nodes which perform computing functions individually and collectively. In order to provide more reliable service, computing clusters may include both primary and backup nodes. In the event that a primary node fails, a backup node may begin performing functions previously performed by the failed primary node. In some cases, the backup node may operate in a standby mode, such that it is immediately available to assume the role of the primary. For example, data may be continually replicated from a primary node to a backup while the primary is operating normally. In the event that the primary node fails, the backup will have access to most of the data that was available to the primary node. However, there are drawbacks to having nodes in a cluster designated exclusively as backups, such as the backup node being unused except when a primary node fails.
In some cases, a computing service provider may provide customers with access to a computing cluster operated on the customer's behalf. Configuring specific primary and backup nodes may be problematic in such cases. One issue involves the customer's incomplete control over the operation and configuration of the computing nodes that make up the cluster. Over time, both the customer and the provider may, for various reasons, modify the operation and configuration of the cluster. For these and other reasons, conventional, fixed or hard-wired approaches to specifying backup nodes may be less than optimal for service-oriented computing environments.